Electronic device components, such as processors and other integrated circuits (IC), typically require a stable power source. Voltage regulators play an important role in the proper operation of a large number of modern electronic circuits. Voltage regulators may generate a regulated supply voltage for certain components of an integrated circuit device. Voltage regulators can provide a supply voltage to memory cell arrays within memory devices, such as DRAM or SRAM. Processor voltage regulators generally receive one voltage from a power supply unit (e.g., battery) and supply a second voltage (i.e., core voltage) to a processor, also known as a microprocessor.
The processor in a computer system tends to require more power than other integrated circuits in a computer system. Therefore, reducing power consumption of the processor and of other peripheral devices (such as memory, northbridge, etc.) may have a significant impact on the power consumption of the entire computer system. A “processor” may refer generally to any apparatus that performs logic operations, computational tasks, control functions, etc. A processor may include one or more subsystems, components, and other processors. A processor may further include various logic components that operate using a clock signal to latch data, advance sequence logic states, synchronize computations and logic operations, provide other timing functions, and combinations thereof.
Power savings in a processor and other peripheral devices of a computer system may have benefits such as extending the usage times between battery charges in a battery-operated computer system, such as notebook computers, personal digital assistants, cell phones, and other systems that may be battery operated and have a processor. Even in non-battery operated computer systems, excessive power consumption may cause higher operational costs and excessive heat. Additionally, increasing governmental and environmental standards may require reducing the power consumed in a computer system.
There is a specific relationship between power consumption of a processor and the operating voltage and frequency of the processor. Most processors currently in use are made using CMOS technology. The power consumed by a CMOS IC (e.g., a processor) is generally proportional to the square of the voltage supplied to the IC multiplied by the operating frequency of the IC according to the equation:P=cV2F  (1)
where V is the voltage supplied to the IC, F is the operating frequency of the IC, and c is a known constant determined by the IC operating at V and F. Given the relationship from equation (1), it can be seen that reducing the frequency or the voltage of a processor will result in a reduction of the power consumed by the processor.
Frequency is a measure of performance of the processor. In order to conserve power, under-clocking may be desirable when decreased performance is acceptable. Alternatively, there may be situations where over-clocking to increase performance may be desirable. In general, an operating frequency has a minimum voltage at which the processor can operate and maintain proper operation. For example, the core voltage of a processor may be raised for increased frequencies such that the transient state of the voltage signals reaches above the tolerance voltage levels of the transistor gates of the processor. The required voltage may normally increase with increased frequency, and decreases with decreased frequency. Therefore, performance enhancement and power saving is influenced by this frequency/voltage relationship. It may be desirable to operate a processor at the lowest suitable voltage at a frequency that provides the computing power desired by the user at any given moment.
FIG. 1 illustrates a simplified block diagram of a motherboard 100 architecture including a conventional voltage regulation and clocking system for computer system (e.g., personal computer, personal digital assistant, cell phones, notebooks, servers, etc.). Motherboard 100 includes processor 110, northbridge 120, southbridge 125, memory 130, system clock generator 140, and super IO 150.
System clock generator 140 provides processor 110, northbridge 120, and memory 130 with a system clock signal 141. For voltage regulation, motherboard 100 includes a processor voltage regulator 160, a northbridge voltage regulator 162, and memory voltage regulator 164. Processor voltage regulator 160 regulates the voltage level from the power supply unit (not shown; e.g., battery or other DC power supply) to provide a voltage signal 161 (core voltage) to the processor 110. Processor voltage regulator 160 may be operably coupled to a driver 170 to drive a load current to the processor 110 through FETs 171-174 (also referred to herein as “phases”). In other words, processor voltage regulator 160 may be configured as a multiple-phase voltage regulator. Northbridge voltage regulator 162 provides a voltage signal 163 to the northbridge 120, and memory voltage regulator 164 provides a voltage signal 165 to the memory 130 responsive to reference voltages VREF1 and VREF2. Northbridge voltage regulator 162 and memory voltage regulator 164 may be configured as single-phase voltage regulators with built-in drivers to drive load currents through FETs 175, 176, respectively.
In operation, when the processor 110 powers up, the processor 110 sends an initial voltage identifier (VID) signal 180 to the processor voltage regulator 160 to inform the processor voltage regulator 160 how much voltage is desired by the processor 110. The appropriate voltage signal 161 is provided to the processor 110 in response to the VID signal 180. The system clock generator 140 provides the system clock signal 141 as the reference clock for the processor 110. The processor 110 may internally have some detection for processor loading, and the processor 110 may change a frequency of an internal clock generated responsive to the reference clock (system clock signal 141). The voltage required to support the change in the internal clock may provide the basis for the processor 110 to request a new voltage level from the processor voltage regulator 160 through VID signal 180. The processor voltage regulator 160 receives the new VID signal 180 from the processor 110, decodes the VID signal 180, and sends the new desired voltage signal 161 to the processor 110. However, the system clock signal 141 frequency remains the same.
In some circumstances, it may be desirable to override the VID signal 180. For this purpose, super IO 150 is operably coupled to the VID signal 180. External components such as the southbridge 125 may also override the voltage references VREF1, VREF2 to control other voltage regulators, such as northbridge voltage regulator 162 and memory voltage regulator 164. For example, some memory devices (e.g., DDR2, DDR3) may have specifications which require a higher voltage (e.g., 2.1V) than a nominal voltage for VREF2 (e.g., 1.8V) of many conventional motherboards. The southbridge 125 may also control the system clock generator 140 by sending a signal to the system clock generator 140 to change the frequency of the system clock signal 141. The voltage and frequency control from the super IO 150 and southbridge 125 may be static in nature, and may be determined responsive to a user command via a hardware-triggered interrupt, the BIOS, or some other software command.
FIG. 2 illustrates a simplified block diagram of a motherboard 200 architecture including another conventional voltage regulation and system clocking system for a computer system. Motherboard 200 includes components similar to those employed in FIG. 1, including processor 110, northbridge 120, memory 130, system clock generator 140, processor voltage regulator 160, northbridge voltage regulator 162, memory voltage regulator 164, driver 170, and FETs 171-176. Voltage signals 161, 163, 165 are provided to processor 110, northbridge 120, and memory 130, respectively, as is system clock signal 141. A VID signal 180 is provided to processor voltage regulator 160 from processor 110. Motherboard 200 further includes ASIC 252 and glue logic 254.
In operation, ASIC 252 and glue logic 254 perform a similar function of voltage regulation and changing system clock frequency as do the super IO 150 and southbridge 125 of FIG. 1. However, in addition to static changes in voltage and frequency, glue logic 254 may detect loading on the processor and then inform the ASIC to change the voltage signals 161, 163, 165 through sending commands to processor voltage regulator 160, northbridge voltage regulator 162, and memory voltage regulator 164, respectively. ASIC 252 may also control the system clock generator 140 by sending a command to the system clock generator 140 to change the frequency of the system clock signal 141.
Other conventional systems (not shown) may initiate a change in the system clock frequency and processor voltage by other commands initiated from the processor 110 to the system clock generator 140 or the processor voltage regulator 160. However, in each of the conventional architectures described above, changing the voltage and frequency relies on commands initiated and controlled by components external to the system clock generator 140 and the voltage regulators 160, 162, 164. The use of such external components for load detection, and initiating commands for changing system clock frequency and various voltages, may reduce responsiveness to load changes of the processor 110, and add undesired delay to changing the system clock frequency and voltages for different components of the computer system. Undesired delay may result in situations where the system frequency and voltages of the different components may be mismatched relative to each other, to the processor 110 load state, or both. These mismatched situations may occur frequently as processor load may change often, which may adversely affect the computer system with inefficiencies from wasted power consumption, errors, a lack of desired performance enhancement, computer system instability, or any combination thereof.
The inventors have appreciated that there exists a need for a system clock generator and voltage regulators of a computer system to better respond to the computational demands on a processor as the computational demands of the processor vary with time.